package com.ruoyi.system.api.service;

import com.ruoyi.system.api.ResponseWithData;
import com.ruoyi.system.api.domain.StInfoUpdate;

import java.util.List;
import java.util.Map;

/**
 * 信息变更申请 升级CaseService接口
 * 
 * @author ruoyi
 * @date 2020-03-08
 */
public interface IStInfoUpdateService 
{
    /**
     * 查询信息变更申请 升级Case
     * 
     * @param id 信息变更申请 升级CaseID
     * @return 信息变更申请 升级Case
     */
    public StInfoUpdate selectStInfoUpdateById(Long id);

    /**
     * 查询信息变更申请 升级Case列表
     * 
     * @param stInfoUpdate 信息变更申请 升级Case
     * @return 信息变更申请 升级Case集合
     */
    public List<StInfoUpdate> selectStInfoUpdateList(StInfoUpdate stInfoUpdate);

    /**
     * 新增信息变更申请 升级Case
     * 
     * @param stInfoUpdate 信息变更申请 升级Case
     * @return 结果
     */
    public int insertStInfoUpdate(StInfoUpdate stInfoUpdate);

    /**
     * 修改信息变更申请 升级Case
     * 
     * @param stInfoUpdate 信息变更申请 升级Case
     * @return 结果
     */
    public int updateStInfoUpdate(StInfoUpdate stInfoUpdate);

    /**
     * 批量删除信息变更申请 升级Case
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteStInfoUpdateByIds(String ids);

    /**
     * 删除信息变更申请 升级Case信息
     * 
     * @param id 信息变更申请 升级CaseID
     * @return 结果
     */
    public int deleteStInfoUpdateById(Long id);

    /**
     * 升级Case管理
     * @author wlf
     * @date 2020-03-08
     * @param infoUpdate
     * @return
     */
    List<StInfoUpdate> selectUpdateCase(Map<String, Object> infoUpdate);

    /**
     *  CC调用 Case关闭
     *
     * @param requestId	信息修改申请ID
     * @param closePersonId	关闭服务通知人员ID
     * @return com.ruoyi.system.api.ResponseWithData
     * @author yzg
     * @date 2020/4/5 12:07 下午
     */
    public ResponseWithData handleCase(String requestId, String closePersonId) throws Exception;

    /**
     * 查询服务详情(通过服务单号、工程师获取服务及计划详情)
     * @author wlf
     * @date 2020-04-20
     * @param params
     * @return
     */
    List<Map<String, Object>> noticeAndPlanDetails(Map<String, Object> params);
}
